home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / PWAPCP02.ZIP / CRED330 / CRED330.ZIP / CREDITS.PPE (.txt) < prev    next >
Encoding:
PCBoard Programming Language Executable  |  1994-10-10  |  40.8 KB  |  1,386 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Date     DATE002
  20.     Date     DATE003
  21.     Date     DATE004
  22.     Integer  TINTEGER003(9)
  23.     Integer  TINTEGER004(9)
  24.     Integer  TINTEGER005(9)
  25.     Integer  INTEGER006
  26.     Integer  INTEGER007
  27.     Integer  INTEGER008
  28.     Integer  INTEGER009
  29.     Integer  INTEGER010
  30.     Integer  INTEGER011
  31.     Integer  INTEGER012
  32.     Integer  INTEGER013
  33.     Integer  INTEGER014
  34.     Integer  INTEGER015
  35.     Integer  INTEGER016
  36.     Integer  INTEGER017
  37.     Integer  INTEGER018
  38.     Integer  INTEGER019
  39.     Integer  INTEGER020
  40.     Integer  INTEGER021
  41.     Integer  INTEGER022
  42.     Integer  INTEGER023
  43.     Integer  INTEGER024
  44.     Integer  TINTEGER025(10)
  45.     Integer  INTEGER026
  46.     Integer  INTEGER027
  47.     Integer  TINTEGER028(9)
  48.     Integer  INTEGER029
  49.     Integer  INTEGER030
  50.     Integer  INTEGER031
  51.     Integer  INTEGER032
  52.     Integer  INTEGER033
  53.     Integer  INTEGER034
  54.     Integer  INTEGER035
  55.     Money    MONEY001
  56.     Money    MONEY002
  57.     Money    TMONEY003(10)
  58.     Money    MONEY004
  59.     Real     REAL001
  60.     Real     REAL002
  61.     Real     REAL003
  62.     Real     REAL004
  63.     Real     REAL005
  64.     Real     TREAL006(10)
  65.     Real     REAL007
  66.     Real     REAL008
  67.     String   STRING002
  68.     String   STRING003
  69.     String   STRING004
  70.     String   STRING005
  71.     String   STRING006
  72.     String   STRING007
  73.     String   STRING008
  74.     String   STRING009
  75.     String   STRING010
  76.     String   STRING011
  77.     String   STRING012
  78.     String   STRING013
  79.     String   STRING014
  80.     String   STRING015
  81.     String   STRING016
  82.     String   STRING017
  83.     String   STRING018
  84.     String   STRING019
  85.     String   TSTRING020(99)
  86.     String   STRING021
  87.     String   STRING022
  88.     String   STRING023
  89.     String   STRING024
  90.     String   STRING025
  91.     String   STRING026
  92.     String   STRING027
  93.     String   STRING028
  94.     String   STRING029
  95.     String   STRING030
  96.     String   STRING031
  97.     String   STRING032
  98.     String   STRING033
  99.     String   STRING034
  100.     String   STRING035
  101.     String   STRING036
  102.     String   STRING037
  103.     String   STRING038
  104.     String   STRING039
  105.     String   STRING040
  106.     String   STRING041
  107.     String   STRING042
  108.     String   STRING043
  109.     String   STRING044
  110.     String   STRING045
  111.     String   STRING046
  112.     String   STRING047
  113.     String   STRING048
  114.     String   STRING049
  115.     String   STRING050
  116.     String   STRING051
  117.     String   STRING052
  118.     String   STRING053
  119.     String   STRING054
  120.     String   STRING055
  121.     String   STRING056
  122.     String   STRING057
  123.     String   STRING058
  124.  
  125. ;------------------------------------------------------------------------------
  126.  
  127.     STRING018 = "3.30"
  128.     STRING052 = "N"
  129.     STRING019 = LangExt()
  130.     If (STRING019 == "") Then
  131.         STRING019 = ".ENG"
  132.     Endif
  133.     FAppend 7, PPEPath() + "credits.log", 2, 0
  134.     FPut 7, U_Name(), ","
  135.     INTEGER015 = ReadLine(PCBDat(), 16)
  136.     INTEGER012 = ReadLine(PCBDat(), 273)
  137.     INTEGER013 = ReadLine(PCBDat(), 274)
  138.     INTEGER014 = ReadLine(PCBDat(), 275)
  139.     If (INTEGER012 == 0) Then
  140.         PrintLn 
  141.         PrintLn "     @X0BSorry@X0F, but you can't run this ppe without the @X0Aaccounting PSA@X07"
  142.         PrintLn "  @X0F     installed and the @X0Eaccounting feature enabled @X0Fin @X0CPCBSetup.@X07   "
  143.         PrintLn 
  144.         PrintLn 
  145.     Else
  146.         If (INTEGER013 == 0) Then
  147.             STRING021 = "Credits"
  148.         Else
  149.             STRING021 = "Currency"
  150.         Endif
  151.         Log U_Name() + " ran the Credit.ppe at " + String(Time()) + " on " + String(Date()), 0
  152.         GetUser
  153.         GetToken STRING028
  154.         If (STRING028 == "TEST") STRING052 = "Y"
  155.         If ((STRING028 == "CONFIG") && (U_Sec >= SysopSec())) Gosub LABEL027
  156.         If (STRING028 == "TAX") Then
  157.             Gosub LABEL033
  158.             INTEGER017 = 1
  159.             FOpen 3, PPEPath() + "credlang" + STRING019, 2, 0
  160.             :LABEL001
  161.             If (Ferr(3)) Goto LABEL002
  162.             FGet 3, TSTRING020(INTEGER017)
  163.             If (TSTRING020(INTEGER017) == "") Goto LABEL002
  164.             INTEGER017 = INTEGER017 + 1
  165.             Goto LABEL001
  166.             :LABEL002
  167.             INTEGER017 = 1
  168.             FClose 3
  169.             INTEGER017 = 2
  170.             REAL001 = ""
  171.             REAL005 = ""
  172.             TMONEY003(INTEGER017) = ""
  173.             InputStr " What is the tax rate (C/R = 8.2 %) ", REAL001, 14, 5, "0123456789.", 2 + 4 + 256
  174.             If (REAL001 == "") REAL001 = "8.2"
  175.             InputStr " What is the level amount (C/R = $99.00) ", TMONEY003(INTEGER017), 14, 7, "01234566789.", 2 + 4 + 256
  176.             If (TMONEY003(INTEGER017) == "") TMONEY003(INTEGER017) = "99.00"
  177.             InputStr " What is the handling charge (C/R = 0) ", REAL005, 14, 7, "01234566789.", 2 + 4 + 256
  178.             If (REAL005 == "") REAL005 = "0"
  179.         Else
  180.             If (Exist(PPEPath() + "credits.cfg")) Then
  181.                 Gosub LABEL033
  182.                 If ((STRING048 <> STRING018) && (U_Sec >= INTEGER015)) Then
  183.                     PrintLn "                     @X0CWrong @X0Fconfiguation file - must run @X0Econfig editor@X07"
  184.                     Wait
  185.                     Goto LABEL027
  186.                 ElseIf ((STRING048 <> STRING018) && (U_Sec <> INTEGER015)) Then
  187.                     PrintLn "                  @X0FConfiguration file @X0Eerror, @X0Fplease tell @X0Bsysop@X07", TSTRING020(44)
  188.                     Goto LABEL036
  189.                     Goto LABEL003
  190.                 Endif
  191.                 :LABEL003
  192.             Else
  193.                 If (Exist(PPEPath() + "credits.cfg")) Goto LABEL004
  194.                 PrintLn 
  195.                 PrintLn "                  ", TSTRING020(43)
  196.                 If (U_Sec == INTEGER015) Then
  197.                     Gosub LABEL027
  198.                 ElseIf (U_Sec <> INTEGER015) Then
  199.                     PrintLn 
  200.                     PrintLn "                       ", TSTRING020(44)
  201.                 Endif
  202.                 Log "Credits.ppe config file doest exist", 0
  203.                 Goto LABEL036
  204.             Endif
  205.             :LABEL004
  206.             FAppend 7, PPEPath() + "credits.log", 2, 0
  207.             Gosub LABEL024
  208.             Gosub LABEL025
  209.             PrintLn " ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓"
  210.             PrintLn " ▓▓" + "@POS:78@▓▓"
  211.             PrintLn " ▓▓@X0F      This PPE is @X0EUNREGISTERED @X0F- please @X0CRegister @X0F- @X0EUNREGISTERED          @X07 ▓▓"
  212.             PrintLn " ▓▓" + "@POS:78@▓▓"
  213.             PrintLn " ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓"
  214.             PrintLn 
  215.             Delay 70
  216.             :LABEL005
  217.             If (Exist(PPEPath() + "warning" + STRING019)) Then
  218.                 DispFile PPEPath() + "warning" + STRING019, ""
  219.                 Print "                          "
  220.                 Wait
  221.             Endif
  222.             STRING005 = PPEPath() + "credinf" + STRING019
  223.             If (Exist(STRING005)) Then
  224.                 DispFile STRING005, 1 + 2
  225.                 Newlines 3
  226.             Endif
  227.             :LABEL006
  228.             FClose 1
  229.             INTEGER017 = 1
  230.             FOpen 3, PPEPath() + "credlang" + STRING019, 2, 0
  231.             :LABEL007
  232.             If (Ferr(3)) Goto LABEL008
  233.             FGet 3, TSTRING020(INTEGER017)
  234.             If (TSTRING020(INTEGER017) == "") Goto LABEL008
  235.             INTEGER017 = INTEGER017 + 1
  236.             Goto LABEL007
  237.             :LABEL008
  238.             FClose 3
  239.             :LABEL009
  240.             If (STRING052 == "Y") PrintLn "                 @X0B                Test Mode@X07"
  241.             Newlines 1
  242.             PrintLn "@POS:22@", TSTRING020(31)
  243.             PrintLn "@POS:22@", TSTRING020(32)
  244.             PrintLn "@POS:22@", TSTRING020(33)
  245.             PrintLn "@POS:22@", TSTRING020(34)
  246.             PrintLn "@POS:22@", TSTRING020(35)
  247.             PrintLn "@POS:22@", TSTRING020(36)
  248.             PrintLn "@POS:22@", TSTRING020(37)
  249.             PrintLn "@POS:22@", TSTRING020(38)
  250.             PrintLn "@POS:22@", TSTRING020(39)
  251.             PrintLn "@POS:22@", TSTRING020(40)
  252.             PrintLn 
  253.             InputStr "@POS:20@" + TSTRING020(41) + " ", STRING023, 14, 1, Mask_Ascii(), 2 + 4 + 256 + 8
  254.             Select Case (STRING023)
  255.                 Case "Q"
  256.                     Goto LABEL036
  257.                 Case "1"
  258.                     DispFile PPEPath() + "MAINMNU1" + STRING019, ""
  259.                     Wait
  260.                     Goto LABEL009
  261.                 Case "3"
  262.                     Gosub LABEL034
  263.                     Goto LABEL009
  264.                 Case "4"
  265.                     STRING026 = "cr" + String(U_RecNum(U_Name())) + ".inv"
  266.                     DispFile STRING025 + STRING026, ""
  267.                     Goto LABEL009
  268.                 Case "5"
  269.                     Shell 1, INTEGER011, "pkzip -a subscib ", "subscribe." + STRING019
  270.                     STRING026 = "subscrib.zip"
  271.                     STRING025 = PPEPath()
  272.                     Gosub LABEL035
  273.                     Delete PPEPath() + "subscrib.zip"
  274.                     Goto LABEL009
  275.             End Select
  276.             FAppend 1, PPEPath() + "credits.chg", 2, 0
  277.             :LABEL010
  278.             Newlines 2
  279.             InputStr "@X0F  " + TSTRING020(8), STRING003, 13, 25, Mask_Ascii(), 4 + 2 + 8 + 256
  280.             If (STRING003 == "") Goto LABEL006
  281.             If (STRING003 == "Q") Goto LABEL036
  282.             PrintLn 
  283.             PrintLn "@X0F  " + TSTRING020(9)
  284.             InputStr "  " + TSTRING020(10), STRING002, 11, 20, "Qq0123456789", 2 + 4 + 256 + 128 + 8
  285.             PrintLn 
  286.             PrintLn 
  287.             STRING038 = STRING002
  288.             If (STRING002 == "Q") Then
  289.                 FClose 1
  290.                 Goto LABEL036
  291.             ElseIf (ValCC(STRING002)) Then
  292.                 FClose 5
  293.                 FOpen 5, PPEPath() + "credits.tcn", 2, 0
  294.                 PrintLn "             ", TSTRING020(86)
  295.                 Newlines 5
  296.                 INTEGER035 = 1
  297.                 STRING055 = Len(StripAtx(TSTRING020(87)))
  298.                 INTEGER030 = Len(TSTRING020(87))
  299.                 :LABEL011
  300.                 If (Ferr(5)) Goto LABEL012
  301.                 FGet 5, STRING034
  302.                 If (INTEGER035 > 69) Then
  303.                     INTEGER035 = 1
  304.                 Endif
  305.                 Print Space(80)
  306.                 AnsiPos INTEGER035, 20
  307.                 Print TSTRING020(87)
  308.                 AnsiPos 1, 20
  309.                 Print Chr(8) + Chr(8) + Chr(8) + Chr(8) + Chr(8) + Chr(8) + Chr(8)
  310.                 INTEGER035 = INTEGER035 + 1
  311.                 If (STRING034 == STRING002) Then
  312.                     PrintLn "             ", TSTRING020(45)
  313.                     Goto LABEL010
  314.                 Endif
  315.                 INTEGER009 = Len(STRING034)
  316.                 For INTEGER019 = 1 To INTEGER009
  317.                     STRING035 = Mid(STRING034, INTEGER019, 1)
  318.                     If (STRING035 == "*") Then
  319.                         INTEGER009 = INTEGER009 - 1
  320.                         STRING036 = Left(STRING034, INTEGER017)
  321.                         STRING037 = Left(STRING002, INTEGER017)
  322.                         If (STRING037 == STRING036) Then
  323.                             PrintLn 
  324.                             PrintLn "        ", TSTRING020(46)
  325.                             Goto LABEL010
  326.                         Endif
  327.                     Endif
  328.                 Next
  329.                 Goto LABEL011
  330.                 :LABEL012
  331.                 PrintLn Space(80)
  332.                 If ((STRING046 == "N") && (CCType(STRING002) == "AMERICAN EXPRESS")) Then
  333.                     PrintLn "                             @X0ENo @X0FAmerican Express"
  334.                     Goto LABEL010
  335.                 ElseIf ((STRING047 == "N") && (CCType(STRING002) == "DISCOVER")) Then
  336.                     PrintLn "                                 @X0ENo @X0FDiscover"
  337.                     Goto LABEL010
  338.                 Endif
  339.                 PrintLn 
  340.                 PrintLn "                     " + Strip(Left(CCType(STRING002), 20), " "), "@X0A -@X07 ", FmtCC(STRING002)
  341.             Else
  342.                 PrintLn 
  343.                 PrintLn "   @X0F" + TSTRING020(11)
  344.                 Goto LABEL006
  345.             Endif
  346.             :LABEL013
  347.             PrintLn 
  348.             InputStr "                " + TSTRING020(12), STRING050, 12, 5, "0123456789-/", 2 + 4 + 64 + 256
  349.             STRING058 = Date()
  350.             INTEGER034 = InStr(STRING050, "/")
  351.             STRING056 = Left(STRING050, INTEGER034 - 1)
  352.             If (Left(STRING056, 1) == 0) STRING056 = Right(STRING056, 1)
  353.             DATE004 = Len(STRING050)
  354.             STRING057 = String(Right(STRING050, 2))
  355.             If (STRING057 < String(Right(Year(Date()), 2))) Then
  356.                 PrintLn "   ", TSTRING020(85)
  357.                 Goto LABEL013
  358.             ElseIf ((STRING056 < String(Month(Date()))) && (STRING057 <= String(Right(Year(Date()), 2)))) Then
  359.                 PrintLn "   ", TSTRING020(85)
  360.                 Goto LABEL013
  361.             ElseIf ((STRING056 >= String(Month(Date()))) && (STRING057 <= String(Right(Year(Date()), 2)))) Then
  362.                 Goto LABEL014
  363.             Endif
  364.             If (STRING050 == "") Goto LABEL013
  365.             :LABEL014
  366.             PrintLn 
  367.             If (Psa(3) && (U_Addr(0) <> "")) STRING044 = U_Addr(0)
  368.             InputStr "     " + TSTRING020(62) + " ", STRING044, 14, 45, Mask_Ascii(), 2 + 4 + 256
  369.             If (STRING044 == "") Then
  370.                 PrintLn "          " + TSTRING020(63)
  371.                 Goto LABEL014
  372.             Endif
  373.             :LABEL015
  374.             PrintLn 
  375.             If (Psa(3) && (U_Addr(2) <> "")) STRING041 = U_Addr(2)
  376.             InputStr "     " + TSTRING020(64) + " ", STRING041, 14, 35, Mask_Ascii(), 2 + 4 + 256
  377.             If (STRING041 == "") Goto LABEL015
  378.             :LABEL016
  379.             PrintLn 
  380.             If (Psa(3) && (U_Addr(3) <> "")) STRING042 = U_Addr(3)
  381.             InputStr "     " + TSTRING020(65) + " ", STRING042, 14, 2, Mask_Ascii(), 2 + 4 + 256
  382.             If (STRING042 == "") Goto LABEL016
  383.             :LABEL017
  384.             PrintLn 
  385.             If (Psa(3) && (U_Addr(4) <> "")) STRING043 = U_Addr(4)
  386.             InputStr "     " + TSTRING020(66) + " ", STRING043, 14, 10, Mask_Ascii(), 2 + 4 + 256
  387.             If (STRING043 == "") Goto LABEL017
  388.             :LABEL018
  389.             PrintLn 
  390.             If (Psa(3) && (U_Addr(5) <> "")) STRING051 = U_Addr(5)
  391.             InputStr "     " + TSTRING020(67) + " ", STRING051, 14, 10, Mask_Ascii(), 2 + 4 + 256
  392.             If (STRING051 == "") Goto LABEL018
  393.             :LABEL019
  394.             PrintLn 
  395.             If (U_HVPhone <> "") STRING039 = U_HVPhone
  396.             InputStr "     " + TSTRING020(68) + " ", STRING039, 14, 20, "0123456789-", 2 + 4 + 256
  397.             If (STRING039 == "") Goto LABEL019
  398.             :LABEL020
  399.             PrintLn 
  400.             If (U_BDPhone <> "") STRING040 = U_BDPhone
  401.             InputStr "     " + TSTRING020(69) + "@X07 ", STRING040, 14, 20, "0123456789-", 2 + 4 + 256
  402.             If (STRING040 == "") Goto LABEL020
  403.             Newlines 3
  404.             :LABEL021
  405.             PrintLn "                         ", TSTRING020(1)
  406.             PrintLn "                         ", TSTRING020(2)
  407.             PrintLn "                         ", TSTRING020(3)
  408.             PrintLn 
  409.             If (STRING011 == "Y") Then
  410.                 INTEGER016 = "1"
  411.             Endif
  412.             INTEGER017 = 1
  413.             TREAL006(INTEGER017) = TMONEY003(INTEGER017)
  414.             PrintLn "   @X09╔══════════════════════════════════════════════════════════════════════╗@X07"
  415.             For INTEGER017 = 1 To INTEGER016
  416.                 PrintLn "@X09   ║@X0F ", INTEGER017, "@X0E) @X0E- ", TINTEGER025(INTEGER017), "@POS:16@@X0F", STRING022, "@POS:30@", TSTRING020(82), "@X0F ", TINTEGER005(INTEGER017), "@POS:46@", TSTRING020(83), " @X07 ", TINTEGER003(INTEGER017), "@X0C   ", TSTRING020(5), " @X0A ", TMONEY003(INTEGER017), "@X09@POS:75@║ @X07"
  417.             Next
  418.             PrintLn "   @X09╚══════════════════════════════════════════════════════════════════════╝@X07"
  419.             PrintLn 
  420.             InputStr "                  " + TSTRING020(6) + " @X0F(@X0E1 - " + String(INTEGER016) + "@X0F) " + TSTRING020(7) + " @X07", STRING010, 11, 1, "0123456789Qq", 2 + 4 + 8 + 256
  421.             If (STRING010 == "Q") Goto LABEL036
  422.             If ((STRING010 < 1) || (STRING010 > INTEGER016)) Goto LABEL021
  423.             INTEGER017 = STRING010
  424.             Gosub LABEL022
  425.             Gosub LABEL023
  426.             Goto LABEL036
  427.             :LABEL022
  428.             PrintLn 
  429.             PrintLn "          @X0F    ", TSTRING020(13), "@X0E ", STRING010, " @X0F", TSTRING020(14), " @X0C", TINTEGER025(INTEGER017), " @X0B", STRING022, "@X0F ", TSTRING020(15), "@X0A ", TMONEY003(INTEGER017), "@X07"
  430.             PrintLn 
  431.             InputStr "                            " + TSTRING020(16) + " ", STRING009, 10, 1, "", 2 + 4 + 8 + 16384
  432.             If (STRING009 == "N") Goto LABEL036
  433.             If (STRING009 == "Y") Then
  434.             Endif
  435.             Return
  436.             :LABEL023
  437.             PrintLn 
  438.             PrintLn 
  439.             PrintLn "@X0F                      ", TSTRING020(24), " ", Account(0), "@X07"
  440.             PrintLn 
  441.             STRING004 = Account(0) + TINTEGER025(INTEGER017)
  442.             If (STRING033 == "Y") Then
  443.                 GetUser
  444.                 INTEGER008 = TINTEGER025(INTEGER017)
  445.                 Account 0, INTEGER008
  446.                 U_Sec = TINTEGER003(INTEGER017)
  447.                 INTEGER029 = TINTEGER004(INTEGER017)
  448.                 Account 17, INTEGER029
  449.                 DATE003 = Date() + TINTEGER005(INTEGER017)
  450.                 U_ExpDate = DATE003
  451.                 U_ExpSec = TINTEGER028(INTEGER017)
  452.                 If (STRING052 == "N") PutUser
  453.             Else
  454.                 PrintLn 
  455.                 PrintLn "      ", TSTRING020(47)
  456.                 PrintLn 
  457.             Endif
  458.         Endif
  459.         PrintLn "                      ", TSTRING020(84), " ", TINTEGER003(INTEGER017)
  460.         PrintLn 
  461.         PrintLn "@X0F                 " + TSTRING020(25), " ", TINTEGER025(INTEGER017), " ", TSTRING020(26)
  462.         PrintLn 
  463.         PrintLn "             @X0F   ", TSTRING020(27), " ", Account(0), "@X07"
  464.         PrintLn 
  465.         PrintLn "                ", TSTRING020(28), " ", Strip(Left(CCType(STRING002), 20), " "), " ", TSTRING020(29), "@X0A ", TMONEY003(INTEGER017), "@X07"
  466.         DATE002 = Date() + TINTEGER005(INTEGER017)
  467.         PrintLn 
  468.         PrintLn "                       ", TSTRING020(76), " ", DATE002
  469.         PrintLn 
  470.         If (REAL001 <> "0") Then
  471.             REAL002 = REAL001 / 100
  472.             REAL003 = (TMONEY003(INTEGER017) * REAL002) / 100
  473.             INTEGER031 = Len(REAL003)
  474.             INTEGER032 = 1
  475.             INTEGER033 = InStr(REAL003, ".")
  476.             INTEGER006 = INTEGER033 + 2
  477.             INTEGER007 = INTEGER033 + 3
  478.             If (INTEGER007 >= "5") Then
  479.                 REAL008 = ".01"
  480.                 REAL007 = Left(REAL003, INTEGER006) + REAL008
  481.             Endif
  482.         Endif
  483.         MONEY002 = REAL007 * 100 + REAL008
  484.         PrintLn "                      @X0E", REAL001, "%@X07 ", TSTRING020(77), " ", MONEY002
  485.         PrintLn 
  486.         MONEY004 = REAL005 * 100
  487.         If (REAL005 <> "0") PrintLn "                           ", TSTRING020(78) , " ", MONEY004
  488.         PrintLn 
  489.         TREAL006(INTEGER017) = TMONEY003(INTEGER017) / 100
  490.         REAL005 = String(REAL005)
  491.         REAL004 = TREAL006(INTEGER017) + REAL007 + REAL005
  492.         INTEGER033 = InStr(REAL004, ".")
  493.         INTEGER031 = Len(REAL004)
  494.         INTEGER006 = INTEGER033 + 2
  495.         MONEY001 = Left(REAL004, 6)
  496.         PrintLn "                           ", TSTRING020(79), " ", MONEY001
  497.         PrintLn 
  498.         If (STRING028 == "TAX") End
  499.         FPutLn 1, TSTRING020(17), " ", Date(), " at ", Time()
  500.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(18)))
  501.         FPutLn 1, " " + TSTRING020(18) + Space(INTEGER010) + STRING003
  502.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(19)))
  503.         FPutLn 1, " " + TSTRING020(19) + Space(INTEGER010) + FmtCC(STRING002)
  504.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(20)))
  505.         FPutLn 1, " " + TSTRING020(20) + Space(INTEGER010), STRING050
  506.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(21)))
  507.         FPutLn 1, " " + TSTRING020(21) + Space(INTEGER010) + U_Name()
  508.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(70)))
  509.         FPutLn 1, " " + TSTRING020(70) + Space(INTEGER010) + STRING044
  510.         INTEGER010 = 36 - Len(StripAtx(TSTRING020(71))) + Len(StripAtx(TSTRING020(72)))
  511.         FPutLn 1, " " + TSTRING020(71) + " " + TSTRING020(72) + Space(INTEGER010) + STRING041 + ", " + STRING042 + " ," + STRING043
  512.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(73)))
  513.         FPutLn 1, " " + TSTRING020(73) + Space(INTEGER010) + U_Addr(5)
  514.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(74)))
  515.         FPutLn 1, " " + TSTRING020(74) + Space(INTEGER010) + STRING039
  516.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(75)))
  517.         FPutLn 1, " " + TSTRING020(75) + Space(INTEGER010) + STRING040
  518.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(22)))
  519.         FPutLn 1, " " + TSTRING020(22) + Space(INTEGER010) + "(" + STRING010 + ")" + "  ", String(TINTEGER025(INTEGER017))
  520.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(23)))
  521.         FPutLn 1, " " + TSTRING020(23) + Space(INTEGER010) + String(CCType(STRING002)) + "  " + String(TMONEY003(INTEGER017))
  522.         If (REAL001 <> "0") INTEGER010 = 43 - Len(StripAtx(TSTRING020(77)))
  523.         FPutLn 1, " " + StripAtx(TSTRING020(77)) + Space(INTEGER010) + String(MONEY002)
  524.         If (REAL005 <> "0") INTEGER010 = 43 - Len(StripAtx(TSTRING020(22)))
  525.         FPutLn 1, " " + StripAtx(TSTRING020(78)) + Space(INTEGER010) + String(MONEY004)
  526.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(79)))
  527.         FPutLn 1, " " + StripAtx(TSTRING020(79)) + Space(INTEGER010) + String(MONEY001)
  528.         If (STRING052 == "Y") FPutLn 1, "  TEST  TEST  TEST  TEST  TEST  TEST  TEST  TEST  "
  529.         FPutLn 1, "**********************************************************"
  530.         FClose 1
  531.         PrintLn " "
  532.         If (STRING049 == "Y") Message 0, "SYSOP", U_Name() , "CREDITS", "R", 0, 0, 0, PPEPath() + "credits.txt"
  533.         Select Case (CCType(STRING002))
  534.             Case "VISA"
  535.                 FAppend 6, PPEPath() + "credits.vis", 2, 0
  536.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  537.             Case "MASTERCARD"
  538.                 FAppend 6, PPEPath() + "credits.mas", 2, 0
  539.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  540.             Case "CARTE BLANCHE"
  541.                 FAppend 6, PPEPath() + "credits.car", 2, 0
  542.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  543.             Case "DISCOVER"
  544.                 FAppend 6, PPEPath() + "credits.dis", 2, 0
  545.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  546.             Case "DINERS CLUB"
  547.                 FAppend 6, PPEPath() + "credits.din", 2, 0
  548.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  549.             Case "OPTIMA"
  550.                 FAppend 6, PPEPath() + "credits.opt", 2, 0
  551.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  552.             Case "AMERICAN EXPRESS"
  553.                 FAppend 6, PPEPath() + "credits.ame", 2, 0
  554.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  555.         End Select
  556.         FClose 6
  557.         FAppend 4, STRING025 + "cr" + String(U_RecNum(U_Name())) + ".inv", 2, 0
  558.         STRING029 = STRING025 + "cr" + String(U_RecNum(U_Name())) + ".inv"
  559.         STRING030 = CCType(STRING002)
  560.         FPutLn 4, " "
  561.         FPutLn 4, "             ", TSTRING020(42), " ", STRING008
  562.         FPutLn 4, "                             ", STRING013
  563.         FPutLn 4, " "
  564.         FPutLn 4, "     ╔════════════════════════════════════════════════════════════════╗"
  565.         FPutLn 4, "     ║           " + TSTRING020(48) + " " + String(Date()) + "  " + TSTRING020(49) + " " + String(Time()) + "             ║"
  566.         FPutLn 4, "     ╚════════════════════════════════════════════════════════════════╝"
  567.         FPutLn 4, "      " + TSTRING020(50) + "  " + STRING008
  568.         INTEGER010 = 43 - Len(StripAtx(TSTRING020(70)))
  569.         FPutLn 4, "      " + TSTRING020(70) + "   " + STRING053
  570.         FPutLn 4, "      " + TSTRING020(71) + "      " + STRING054
  571.         FPutLn 4, "      " + TSTRING020(51) + "     " + STRING017
  572.         FPutLn 4, "     ──────────────────────────────────────────────────────────────────"
  573.         FPutLn 4, "      " + TSTRING020(80) + "       " + U_Name()
  574.         FPutLn 4, "                        " + U_Addr(0)
  575.         FPutLn 4, "                       c" + U_Addr(2) + "," + U_Addr(3) + "  " + U_Addr(4) + "  " + U_Addr(5)
  576.         FPutLn 4, "     ──────────────────────────────────────────────────────────────────"
  577.         FPutLn 4, "      ", TSTRING020(53), "    ", STRING030, "              ", TSTRING020(54), "  ", STRING050
  578.         FPutLn 4, "      ", TSTRING020(55), "  ", STRING002
  579.         FPutLn 4, " "
  580.         FPutLn 4, "      ", TSTRING020(56), "                   ", TINTEGER025(INTEGER017)
  581.         FPutLn 4, "      ", TSTRING020(81), "                    ", TMONEY003(INTEGER017)
  582.         If (REAL001 <> "0") FPutLn 4, "      ", TSTRING020(77) , "             ", REAL003
  583.         If (REAL005 <> "0") FPutLn 4, "      ", TSTRING020(78) , "                  ", REAL005
  584.         FPutLn 4, "      ", TSTRING020(57), "                  ", REAL004
  585.         FPutLn 4, "     ──────────────────────────────────────────────────────────────────"
  586.         FPutLn 4, ""
  587.         FPutLn 4, ""
  588.         FPutLn 4, ""
  589.         FPutLn 4, ""
  590.         FPutLn 4, ""
  591.         PrintLn "          ", TSTRING020(30)
  592.         PrintLn 
  593.         InputStr "              @X0F" + TSTRING020(58), STRING032, 10, 1, "", 2 + 4 + 8 + 256 + 16384
  594.         If (STRING032 == "N") Goto LABEL036
  595.         If (STRING032 == "Y") Then
  596.             PrintLn 
  597.             PrintLn "                 " + TSTRING020(59)
  598.             Gosub LABEL034
  599.         Endif
  600.         PrintLn 
  601.         PrintLn "          ", TSTRING020(30)
  602.         Goto LABEL036
  603.         :LABEL024
  604.         Cls
  605.         PrintLn 
  606.         PrintLn "@POS:23@ @X0F░▒▓█ @X0ACREDITS.PPE  @X07v" + STRING018 + " @X0F█▓▒░ @X07"
  607.         PrintLn 
  608.         PrintLn "                           ░▒▓█ by DM Soft █▓▒░"
  609.         PrintLn 
  610.         Return
  611.         :LABEL025
  612.         STRING017 = STRING007
  613.         STRING014 = Strip(STRING008, " ")
  614.         If (STRING006 == "000000") Then
  615.             STRING011 = "Y"
  616.             Return
  617.             Goto LABEL036
  618.         Else
  619.             For INTEGER019 = 1 To 25
  620.                 STRING015 = Mid(STRING014, INTEGER019, 1)
  621.                 INTEGER018 = Asc(STRING015)
  622.                 INTEGER018 = INTEGER018 - 3
  623.                 INTEGER020 = INTEGER020 + INTEGER018 + 8
  624.             Next
  625.             For INTEGER019 = 1 To 25
  626.                 STRING015 = Mid(STRING017, INTEGER019, 1)
  627.                 INTEGER024 = Asc(STRING015)
  628.                 INTEGER024 = INTEGER024
  629.                 INTEGER021 = INTEGER021 + INTEGER024
  630.             Next
  631.             STRING016 = Lower(PPEName())
  632.             STRING016 = Strip(STRING016, " ")
  633.             For INTEGER019 = 1 To 8
  634.                 STRING015 = Mid(STRING016, INTEGER019, 1)
  635.                 INTEGER023 = Asc(STRING015)
  636.                 INTEGER023 = INTEGER023 - 6
  637.                 INTEGER022 = INTEGER022 + INTEGER023
  638.             Next
  639.             INTEGER020 = INTEGER020 + INTEGER021 + INTEGER022
  640.         Endif
  641.         INTEGER020 = (INTEGER020 * Len(Strip(STRING014, " "))) * 9
  642.         If (INTEGER020 == STRING006) Goto LABEL026
  643.         If (INTEGER020 <> STRING006) Then
  644.             STRING011 = "Y"
  645.             Return
  646.         Endif
  647.         :LABEL026
  648.         STRING012 = "@X0B" + STRING008 + "@X0A SYSOP:@X0F " + STRING017
  649.         PrintLn " @X0E╔════════════════════════════════════════════════════════════════════════════╗@X07"
  650.         PrintLn " @X0E║ @POS:10@@X0FThis @X0APPE registered @X0Fto " + STRING012 + "@POS:79@@X0E║@X07"
  651.         PrintLn " @X0E║                         @X0D@X0FPhone:@X0C ", STRING013, "@X0E@POS:79@║@X07"
  652.         PrintLn " @X0E╚════════════════════════════════════════════════════════════════════════════╝@X07"
  653.         Goto LABEL005
  654.         Goto LABEL036
  655.         :LABEL027
  656.         Gosub LABEL033
  657.         :LABEL028
  658.         Cls
  659.         STRING027 = ""
  660.         Newlines 1
  661.         PrintLn "                  @X0BCredits.ppe v@X0F" + STRING018 + " @X0EConfiguation Editor@X07 "
  662.         PrintLn "                               Page 1 of 4"
  663.         PrintLn 
  664.         PrintLn " @X0E(@X0FA@X0E) @X07Bulletin Board Name....................@X0E[@X0B" + STRING008 + "@POS:76@@X0E]@X07"
  665.         PrintLn " @X0E(@X0FB@X0E) @X07Bulletin Board address.................@X0E[@X0B" + STRING053 + "@POS:76@@X0E]@X07"
  666.         PrintLn " @X0E(@X0FC@X0E) @X07Bulletin Board city, state, zip........@X0E[@X0B" + STRING054 + "@POS:76@@X0E]@X07"
  667.         PrintLn " @X0E(@X0FD@X0E) @X07Sysops full name.......................@X0E[@X0B" + STRING007 + "@X0E@POS:76@]@X07"
  668.         PrintLn " @X0E(@X0FE@X0E) @X07Phone number of your BBS...............@X0E[@X0B" + STRING013 + "@X0E@POS:50@]@X07"
  669.         PrintLn " @X0E(@X0FF@X0E)@X07 Registration number....................@X0E[@X0B" + STRING006 + "@POS:52@@X0E]@X07"
  670.         PrintLn " @X0E(@X0FG@X0E) @X07Currency, Units or Credits@X07.............@X0E[@X0B" + STRING022 + "@X0E@POS:48@]@X07"
  671.         PrintLn " @X0E(@X0FH@X0E) @X07Levels of credit access................@X0E[@X0B" + String(INTEGER016) + "@X0E@POS:48@]@X07"
  672.         PrintLn " @X0E(@X0FI@X0E) @X07Path to invoice files..................@X0E[@X0B" + STRING025 + "@X0E@POS:76@]@X07"
  673.         PrintLn " @X0E[@X0FJ@X0E] @X07Raise Security immediately.............@X0E[@X0B", STRING033, "@X0E@POS:35@]@X07"
  674.         PrintLn " @X0E[@X0FK@X0E] @X07Change Users Expiration date ..........@X0E[@X0B", STRING045, "@POS:35@@X0E]@X07"
  675.         PrintLn " @X0E[@X0FL@X0E] @X07Allow American Express credit card.....@X0E[@X0B", STRING046, "@POS:35@@X0E]@X07"
  676.         PrintLn " @X0E[@X0FM@X0E] @X07Allow Discover credit card.............@X0E[@X0B", STRING047, "@POS:35@@X0E]@X07"
  677.         PrintLn " @X0E(@X0FN@X0E) @X07Send message to sysop after purchase...@X0E[@X0B", STRING049, "@X0E]@X07"
  678.         PrintLn " @X0E(@X0FO@X0E) @X07Percent of sales tax (0 if no tax).....@X0E[@X0B", REAL001, "@POS:50@@X0E]@X07"
  679.         PrintLn " @X0E(@X0FP@X0E) @X07Handling Charge (credit card surcharge)@X0E[@X0B", REAL005, "@X0E@POS:50@]@X07"
  680.         PrintLn 
  681.         InputStr "@X0F Please @X0Bchoose @X0Fa letter to @X0Echange [@X0Fe@X0EX@X0F)it,(@X0E!@X0F) to Save,@X0E +@X0F next screen@X0E]@X07", STRING027, 14, 1, Mask_Ascii(), 4 + 2 + 8 + 64
  682.         If (STRING027 == "!") Goto LABEL032
  683.         If (STRING027 == "") Goto LABEL036
  684.         If (STRING027 == "+") Goto LABEL029
  685.         Select Case (STRING027)
  686.             Case "A"
  687.                 InputStr " What is the name of your BBS ", STRING008, 11, 30, Mask_Ascii(), 2 + 4
  688.                 Goto LABEL028
  689.             Case "B"
  690.                 InputStr " What is your street mailing address( for the BBS) ", STRING053, 11, 30, Mask_Ascii(), 2 + 4
  691.                 Goto LABEL028
  692.             Case "C"
  693.                 InputStr " What is your mailing city, state, zip (for the BBS) ", STRING054, 11, 30, Mask_Ascii(), 2 + 4
  694.                 Goto LABEL028
  695.             Case "D"
  696.                 InputStr " What is the Sysops name ", STRING007, 11, 25, Mask_Ascii(), 2 + 4 + 128
  697.                 Goto LABEL028
  698.             Case "E"
  699.                 InputStr " What is the BBS phone number ", STRING013, 11, 12, Mask_Ascii(), 2 + 4 + 8 + 128
  700.                 Goto LABEL028
  701.             Case "F"
  702.                 InputStr " What is the registration number (leave 000000 if unreg) ", STRING006, 11, 8, Mask_Num(), 2 + 4 + 8
  703.                 Goto LABEL028
  704.             Case "G"
  705.                 InputStr " What are the values measured in (credits, units money) ", STRING022, 11, 12, Mask_Ascii(), 2 + 4 + 8
  706.                 Goto LABEL028
  707.             Case "H"
  708.                 InputStr " How many levels (choices will you give the user ", INTEGER016, 11, 3, Mask_Num(), 2 + 4 + 8
  709.                 Goto LABEL028
  710.             Case "I"
  711.                 InputStr " What is the path where the invoices are stored ", STRING025, 11, 35, Mask_Ascii(), 2 + 4 + 8
  712.                 PrintLn 
  713.                 PrintLn "   The directory will be created for you if it doesn't exist"
  714.                 PrintLn 
  715.                 Wait
  716.                 Shell 1, INTEGER026, "md " + STRING025, ""
  717.                 Wait
  718.                 Goto LABEL028
  719.             Case "J"
  720.                 InputStr " Do you want to raise users security immediately ", STRING033, 11, 1, "", 2 + 4 + 8 + 16384
  721.                 Goto LABEL028
  722.                 Return
  723.             Case "K"
  724.                 InputStr " What do you want to change users expired security ", STRING045, 11, 1, "", 2 + 4 + 8 + 16384
  725.                 Goto LABEL028
  726.             Case "L"
  727.                 InputStr " Do you except American Express credit cards ", STRING046, 11, 1, "", 2 + 4 + 8 + 16384
  728.                 Goto LABEL028
  729.             Case "M"
  730.                 InputStr " Do you except Discover credit cards ", STRING047, 11, 1, "", 2 + 4 + 8 + 16384
  731.                 Goto LABEL028
  732.             Case "N"
  733.                 InputStr " Do you want to receive a message about users credit purchase ", STRING049, 11, 8, "", 2 + 4 + 8 + 16384
  734.                 Goto LABEL028
  735.             Case "O"
  736.                 InputStr " @X07What % of tax do you want (8.2 is 8.2%)(enter 0 if none) ", REAL001, 11, 8, Mask_Ascii(), 2 + 4 + 0
  737.                 Goto LABEL028
  738.             Case "P"
  739.                 InputStr " What is the handling charge (cc surcharge)(enter 0 if none) ", REAL005, 11, 8, "$0123456789.", 2 + 4 + 0
  740.                 Goto LABEL028
  741.             Case Else
  742.                 Goto LABEL028
  743.         End Select
  744.         :LABEL029
  745.         Cls
  746.         STRING027 = ""
  747.         Newlines 1
  748.         PrintLn " @X0E(@X0FA@X0E) @X07First Level (units, credits)...........@X0E[@X0B", TINTEGER025(1), "@X0E@POS:50@]@X07"
  749.         PrintLn " @X0E(@X0FB@X0E) @X07First Level Currency value.............@X0E[@X0B", TMONEY003(1), "@X0E@POS:52@]@X07"
  750.         PrintLn " @X0E(@X0FC@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(1), "@X0E@POS:50@]@X07"
  751.         PrintLn " @X0E(@X0FD@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(1), "@X0E@POS:50@]@X07"
  752.         PrintLn " @X0E(@X0FE@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(1), "@X0E@POS:50@]@X07     @X0ACREDITS.ppe v", STRING018, "@X07"
  753.         PrintLn " @X0E(@X0FF@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(1), "@X0E@POS:50@]@X07"
  754.         PrintLn " @X0E(@X0FG@X0E) @X07Second level (units or credits)........@X0E[@X0B", TINTEGER025(2), "@POS:50@@X0E]@X07       Configuration"
  755.         PrintLn " @X0E(@X0FH@X0E) @X07Second Level Currency Value............@X0E[@X0B", TMONEY003(2), "@X0E@POS:52@]@X07@X07"
  756.         PrintLn " @X0E(@X0FI@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(2), "@X0E@POS:50@]@X07"
  757.         PrintLn " @X0E(@X0FJ@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(2), "@X0E@POS:50@]@X07@X07          Editor"
  758.         PrintLn " @X0E(@X0FK@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(2), "@X0E@POS:50@]@X07"
  759.         PrintLn " @X0E(@X0FL@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(2), "@X0E@POS:50@]@X07         Page 2 of 4"
  760.         PrintLn " @X0E(@X0FM@X0E) @X07Third Level (units or credits).........@X0E[@X0B", TINTEGER025(3), "@X0E@POS:50@]@X07"
  761.         PrintLn " @X0E(@X0FN@X0E) @X07Third Level Currency Value............ @X0E[@X0B", TMONEY003(3), "@POS:52@@X0E]@X07"
  762.         PrintLn " @X0E(@X0FO@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(3), "@X0E@POS:50@]@X07"
  763.         PrintLn " @X0E(@X0FP@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(3), "@X0E@POS:50@]@X07@X07"
  764.         PrintLn " @X0E(@X0FQ@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(3), "@X0E@POS:50@]@X07"
  765.         PrintLn " @X0E(@X0FR@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(3), "@X0E@POS:50@]@X07"
  766.         InputStr "@X0F Please @X0Bchoose @X0Fa letter to @X0Echange [@X0Fe@X0EX@X0F)it,(@X0E!@X0F) to Save,@X0E +@X0F next screen@X0E]@X07", STRING027, 14, 1, Mask_Ascii(), 4 + 2 + 8 + 64
  767.         If (STRING027 == "!") Goto LABEL032
  768.         If (STRING027 == "") Goto LABEL036
  769.         If (STRING027 == "X") Goto LABEL036
  770.         If (STRING027 == "+") Goto LABEL030
  771.         If (STRING027 == "-") Goto LABEL028
  772.         Select Case (STRING027)
  773.             Case "A"
  774.                 InputStr " What is the first level (value) of credits users may purchase ", TINTEGER025(1), 11, 5, Mask_Num(), 2 + 4 + 8
  775.                 Goto LABEL029
  776.             Case "B"
  777.                 InputStr " What is cost of level one purchase ", TMONEY003(1), 11, 7, Mask_Ascii(), 2 + 4 + 8
  778.                 Goto LABEL029
  779.             Case "C"
  780.                 InputStr " What security level to raise level on users ", TINTEGER003(1), 11, 5, Mask_Num(), 2 + 4 + 8
  781.                 Goto LABEL029
  782.             Case "D"
  783.                 InputStr " What security level at which to set expired users (level 1) ", TINTEGER028(1), 11, 5, Mask_Num(), 2 + 4 + 8
  784.                 Goto LABEL029
  785.             Case "E"
  786.                 InputStr "  Security level to set when user has 0 credits", TINTEGER004(1), 11, 4, Mask_Num(), 2 + 4 + 8
  787.                 Goto LABEL029
  788.             Case "F"
  789.                 InputStr " Number of days before expiration of level one user ", TINTEGER005(1), 11, 5, Mask_Num(), 2 + 4 + 8
  790.                 Goto LABEL029
  791.             Case "G"
  792.                 InputStr "What is the second level (value) of credits users may purchase ", TINTEGER025(2), 11, 5, Mask_Num(), 2 + 4 + 8
  793.                 Goto LABEL029
  794.             Case "H"
  795.                 InputStr " What is the cost of level two purchase ", TMONEY003(2), 14, 7, Mask_Ascii(), 2 + 4 + 8
  796.                 Goto LABEL029
  797.             Case "I"
  798.                 InputStr " What security level to raise level on users ", TINTEGER003(2), 11, 5, Mask_Num(), 2 + 4 + 8
  799.                 Goto LABEL029
  800.             Case "J"
  801.                 InputStr " What security level to drop expired users on level three purchase ", TINTEGER028(2), 11, 5, Mask_Num(), 2 + 4 + 8
  802.                 Goto LABEL029
  803.             Case "K"
  804.                 InputStr "  Security level to set when user has 0 credits", TINTEGER004(2), 11, 4, Mask_Num(), 2 + 4 + 8
  805.                 Goto LABEL029
  806.             Case "L"
  807.                 InputStr " Number of days before expiration of level one user ", TINTEGER005(2), 11, 5, Mask_Num(), 2 + 4 + 8
  808.                 Goto LABEL029
  809.             Case "M"
  810.                 InputStr " What is the third level (value) of credits users may purchase ", TINTEGER025(3), 11, 5, Mask_Num(), 2 + 4 + 8
  811.                 Goto LABEL029
  812.             Case "N"
  813.                 InputStr " What is the cost of level three purchase ", TMONEY003(3), 11, 7, Mask_Ascii(), 2 + 4 + 8
  814.                 Goto LABEL029
  815.             Case "O"
  816.                 InputStr " What security level to raise level on users ", TINTEGER003(3), 11, 5, Mask_Num(), 2 + 4 + 8
  817.                 Goto LABEL029
  818.             Case "P"
  819.                 InputStr " What security level to drop expired users on level three purchase ", TINTEGER028(3), 11, 5, Mask_Num(), 2 + 4 + 8
  820.                 Goto LABEL029
  821.             Case "Q"
  822.                 InputStr "  Security level to set when user has 0 credits", TINTEGER004(3), 11, 4, Mask_Num(), 2 + 4 + 8
  823.                 Goto LABEL029
  824.             Case "R"
  825.                 InputStr " Number of days before expiration of level one user ", TINTEGER005(3), 11, 5, Mask_Num(), 2 + 4 + 8
  826.                 Goto LABEL029
  827.             Case Else
  828.                 Goto LABEL029
  829.         End Select
  830.         Goto LABEL036
  831.         :LABEL030
  832.         Cls
  833.         STRING027 = ""
  834.         Newlines 1
  835.         PrintLn " @X0E(@X0FA@X0E) @X07Fourth Level (units, credits)..........@X0E[@X0B", TINTEGER025(4), "@X0E@POS:50@]@X07"
  836.         PrintLn " @X0E(@X0FB@X0E) @X07Fourth Currency value..................@X0E[@X0B", TMONEY003(4), "@X0E@POS:52@]@X07@X07"
  837.         PrintLn " @X0E(@X0FC@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(4), "@X0E@POS:50@]@X07"
  838.         PrintLn " @X0E(@X0FD@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(4), "@X0E@POS:50@]@X07"
  839.         PrintLn " @X0E(@X0FE@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(4), "@X0E@POS:50@]@X07@X0A    CREDITS.ppe v", STRING018, "@X07"
  840.         PrintLn " @X0E(@X0FF@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(4), "@X0E@POS:50@]@X07"
  841.         PrintLn " @X0E(@X0FG@X0E) @X07Fifth level (units or credits).........@X0E[@X0B", TINTEGER025(5), "@POS:50@@X0E]@X07     Configuration"
  842.         PrintLn " @X0E(@X0FH@X0E) @X07Fifth Level Currency Value.............@X0E[@X0B", TMONEY003(5), "@X0E@POS:52@]@X07@X07"
  843.         PrintLn " @X0E(@X0FI@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(5), "@X0E@POS:50@]@X07       Editor"
  844.         PrintLn " @X0E(@X0FJ@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(5), "@X0E@POS:50@]@X07"
  845.         PrintLn " @X0E(@X0FK@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(5), "@X0E@POS:50@]      @X07 Page 3 of 4@X07"
  846.         PrintLn " @X0E(@X0FL@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(5), "@X0E@POS:50@]@X07"
  847.         PrintLn " @X0E(@X0FM@X0E) @X07Sixth Level (units or credits).........@X0E[@X0B", TINTEGER025(6), "@X0E@POS:50@]@X07"
  848.         PrintLn " @X0E(@X0FN@X0E) @X07Sixth Level Currency Value............ @X0E[@X0B", TMONEY003(6), "@POS:52@@X0E]@X07"
  849.         PrintLn " @X0E(@X0FO@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(6), "@X0E@POS:50@]@X07"
  850.         PrintLn " @X0E(@X0FP@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(6), "@X0E@POS:50@]@X07@X07"
  851.         PrintLn " @X0E(@X0FQ@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(6), "@X0E@POS:50@]@X07"
  852.         PrintLn " @X0E(@X0FR@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(6), "@X0E@POS:50@]@X07"
  853.         PrintLn 
  854.         InputStr "@X0F @X0BChoose @X0Fan item to @X0Echange [@X0F(@X0E!@X0F) to Save,@X0EC/R@X0F to abort@X0E + @X0Fnext screen]@X07", STRING027, 14, 1, Mask_Ascii(), 4 + 2 + 8 + 64
  855.         If (STRING027 == "!") Goto LABEL032
  856.         If (STRING027 == "") Goto LABEL036
  857.         If (STRING027 == "X") Goto LABEL036
  858.         If (STRING027 == "+") Goto LABEL031
  859.         If (STRING027 == "-") Goto LABEL029
  860.         Select Case (STRING027)
  861.             Case "A"
  862.                 InputStr " What is the fourth level (value) of credits users may purchase ", TINTEGER025(4), 11, 5, Mask_Num(), 2 + 4 + 8
  863.                 Goto LABEL030
  864.             Case "B"
  865.                 InputStr " What is cost of level four purchase ", TMONEY003(4), 11, 7, Mask_Ascii(), 2 + 4 + 8
  866.                 Goto LABEL030
  867.             Case "C"
  868.                 InputStr " What security level to raise level on users ", TINTEGER003(4), 11, 5, Mask_Num(), 2 + 4 + 8
  869.                 Goto LABEL030
  870.             Case "D"
  871.                 InputStr " What security level at which to set expired users (level 4) ", TINTEGER028(4), 11, 5, Mask_Num(), 2 + 4 + 8
  872.                 Goto LABEL030
  873.             Case "E"
  874.                 InputStr "  Security level to set when user has 0 credits", TINTEGER004(4), 11, 4, Mask_Num(), 2 + 4 + 8
  875.                 Goto LABEL030
  876.             Case "F"
  877.                 InputStr " Number of days before expiration of level four users ", TINTEGER005(4), 11, 5, Mask_Num(), 2 + 4 + 8
  878.                 Goto LABEL030
  879.             Case "G"
  880.                 InputStr "What is the five level (value) of credits users may purchase ", TINTEGER025(5), 11, 5, Mask_Num(), 2 + 4 + 8
  881.                 Goto LABEL030
  882.             Case "H"
  883.                 InputStr " What is the cost of level five purchase ", TMONEY003(5), 14, 7, Mask_Ascii(), 2 + 4 + 8
  884.                 Goto LABEL030
  885.             Case "I"
  886.                 InputStr " What security level to raise level five users ", TINTEGER003(5), 11, 5, Mask_Num(), 2 + 4 + 8
  887.                 Goto LABEL030
  888.             Case "J"
  889.                 InputStr " What security level to drop expired users on five three purchase ", TINTEGER028(5), 11, 5, Mask_Num(), 2 + 4 + 8
  890.                 Goto LABEL030
  891.             Case "K"
  892.                 InputStr "  Security to set when level five users have 0 credits", TINTEGER004(5), 11, 4, Mask_Num(), 2 + 4 + 8
  893.                 Goto LABEL030
  894.             Case "L"
  895.                 InputStr " Number of days before expiration of level five user ", TINTEGER005(5), 11, 5, Mask_Num(), 2 + 4 + 8
  896.                 Goto LABEL030
  897.             Case "M"
  898.                 InputStr " What is the sixth level (value) of credits users may purchase ", TINTEGER025(6), 11, 5, Mask_Num(), 2 + 4 + 8
  899.                 Goto LABEL030
  900.             Case "N"
  901.                 InputStr " What is the cost of level six purchase ", TMONEY003(6), 11, 7, Mask_Ascii(), 2 + 4 + 8
  902.                 Goto LABEL030
  903.             Case "O"
  904.                 InputStr " What security level to raise level six users ", TINTEGER003(6), 11, 5, Mask_Num(), 2 + 4 + 8
  905.                 Goto LABEL030
  906.             Case "P"
  907.                 InputStr " What security level to drop expired users on level six purchase ", TINTEGER028(6), 11, 5, Mask_Num(), 2 + 4 + 8
  908.                 Goto LABEL030
  909.             Case "Q"
  910.                 InputStr "  Security level to set when user has 0 credits", TINTEGER004(6), 11, 4, Mask_Num(), 2 + 4 + 8
  911.                 Goto LABEL030
  912.             Case "R"
  913.                 InputStr " Number of days before expiration of level six user ", TINTEGER005(6), 11, 5, Mask_Num(), 2 + 4 + 8
  914.                 Goto LABEL030
  915.             Case Else
  916.                 Goto LABEL030
  917.         End Select
  918.         Goto LABEL036
  919.         :LABEL031
  920.         Cls
  921.         STRING027 = ""
  922.         Newlines 1
  923.         PrintLn " @X0E(@X0FA@X0E) @X07Seventh Level (units, credits).........@X0E[@X0B", TINTEGER025(7), "@X0E@POS:50@]@X07"
  924.         PrintLn " @X0E(@X0FB@X0E) @X07Seventh Currency value.................@X0E[@X0B", TMONEY003(7), "@X0E@POS:52@]@X07@X07"
  925.         PrintLn " @X0E(@X0FC@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(7), "@X0E@POS:50@]@X07"
  926.         PrintLn " @X0E(@X0FD@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(7), "@X0E@POS:50@]@X07"
  927.         PrintLn " @X0E(@X0FE@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(7), "@X0E@POS:50@]     @X0ACREDITS.ppe v", STRING018, "@X07"
  928.         PrintLn " @X0E(@X0FF@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(7), "@X0E@POS:50@]@X07"
  929.         PrintLn " @X0E(@X0FG@X0E) @X07Eighth level (units or credits)........@X0E[@X0B", TINTEGER025(8), "@POS:50@@X0E]@X07       Configuration"
  930.         PrintLn " @X0E(@X0FH@X0E) @X07Eighth Level Currency Value............@X0E[@X0B", TMONEY003(8), "@X0E@POS:52@]@X07@X07"
  931.         PrintLn " @X0E(@X0FI@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(8), "@X0E@POS:50@]@X07        Editor@X07"
  932.         PrintLn " @X0E(@X0FJ@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(8), "@X0E@POS:50@]@X07@X07"
  933.         PrintLn " @X0E(@X0FK@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(8), "@X0E@POS:50@]@X07        Page 4 of 4@X07"
  934.         PrintLn " @X0E(@X0FL@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(8), "@X0E@POS:50@]@X07"
  935.         PrintLn " @X0E(@X0FM@X0E) @X07Nineth Level (units or credits)........@X0E[@X0B", TINTEGER025(9), "@X0E@POS:50@]@X07"
  936.         PrintLn " @X0E(@X0FN@X0E) @X07Nineth Level Currency Value........... @X0E[@X0B", TMONEY003(9), "@POS:52@@X0E]@X07"
  937.         PrintLn " @X0E(@X0FO@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(9), "@X0E@POS:50@]@X07"
  938.         PrintLn " @X0E(@X0FP@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(9), "@X0E@POS:50@]@X07@X07"
  939.         PrintLn " @X0E(@X0FQ@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(9), "@X0E@POS:50@]@X07"
  940.         PrintLn " @X0E(@X0FR@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(9), "@X0E@POS:50@]@X07"
  941.         PrintLn 
  942.         InputStr "@X0F @X0BChoose @X0Fan item to @X0Echange [@X0F(@X0E!@X0F) to Save,@X0EC/R@X0F to abort@X0E + @X0Fnext screen]@X07", STRING027, 14, 1, Mask_Ascii(), 4 + 2 + 8 + 64
  943.         If (STRING027 == "!") Goto LABEL032
  944.         If (STRING027 == "") Goto LABEL036
  945.         If (STRING027 == "X") Goto LABEL036
  946.         If (STRING027 == "+") Goto LABEL028
  947.         If (STRING027 == "-") Goto LABEL030
  948.         Select Case (STRING027)
  949.             Case "A"
  950.                 InputStr " What is the seventh (value) of credits users may purchase ", TINTEGER025(7), 11, 5, Mask_Num(), 2 + 4 + 8
  951.                 Goto LABEL031
  952.             Case "B"
  953.                 InputStr " What is cost of level seventh ", TMONEY003(7), 11, 7, Mask_Ascii(), 2 + 4 + 8
  954.                 Goto LABEL031
  955.             Case "C"
  956.                 InputStr " What security level to raise level seven users ", TINTEGER003(7), 11, 5, Mask_Num(), 2 + 4 + 8
  957.                 Goto LABEL031
  958.             Case "D"
  959.                 InputStr " What security level at which to set expired users (level 7) ", TINTEGER028(7), 11, 5, Mask_Num(), 2 + 4 + 8
  960.                 Goto LABEL031
  961.             Case "E"
  962.                 InputStr "  Security level to set when user has 0 credits", TINTEGER004(7), 11, 4, Mask_Num(), 2 + 4 + 8
  963.                 Goto LABEL031
  964.             Case "F"
  965.                 InputStr " Number of days before expiration of level seven users ", TINTEGER005(7), 11, 5, Mask_Num(), 2 + 4 + 8
  966.                 Goto LABEL031
  967.             Case "G"
  968.                 InputStr "What is the eighth level (value) of credits users may purchase ", TINTEGER025(8), 11, 5, Mask_Num(), 2 + 4 + 8
  969.                 Goto LABEL031
  970.             Case "H"
  971.                 InputStr " What is the cost of level eight purchase ", TMONEY003(8), 14, 7, Mask_Ascii(), 2 + 4 + 8
  972.                 Goto LABEL031
  973.             Case "I"
  974.                 InputStr " What security level to raise level eight users ", TINTEGER003(8), 11, 5, Mask_Num(), 2 + 4 + 8
  975.                 Goto LABEL031
  976.             Case "J"
  977.                 InputStr " What security level to drop expired users level eight purchase ", TINTEGER028(8), 11, 5, Mask_Num(), 2 + 4 + 8
  978.                 Goto LABEL031
  979.             Case "K"
  980.                 InputStr "  Security to set when level eight users have 0 credits", TINTEGER004(8), 11, 4, Mask_Num(), 2 + 4 + 8
  981.                 Goto LABEL031
  982.             Case "L"
  983.                 InputStr " Number of days before expiration of level eight user ", TINTEGER005(8), 11, 5, Mask_Num(), 2 + 4 + 8
  984.                 Goto LABEL031
  985.             Case "M"
  986.                 InputStr " What is the nineth level (value) of credits users may purchase ", TINTEGER025(9), 11, 5, Mask_Num(), 2 + 4 + 8
  987.                 Goto LABEL031
  988.             Case "N"
  989.                 InputStr " What is the cost of level nine purchase ", TMONEY003(9), 11, 7, Mask_Ascii(), 2 + 4 + 8
  990.                 Goto LABEL031
  991.             Case "O"
  992.                 InputStr " What security level to raise level nine users ", TINTEGER003(9), 11, 5, Mask_Num(), 2 + 4 + 8
  993.                 Goto LABEL031
  994.             Case "P"
  995.                 InputStr " What security level to drop expired users on level nine purchase ", TINTEGER028(9), 11, 5, Mask_Num(), 2 + 4 + 8
  996.                 Goto LABEL031
  997.             Case "Q"
  998.                 InputStr "  Security level to set when user has 0 credits", TINTEGER004(9), 11, 4, Mask_Num(), 2 + 4 + 8
  999.                 Goto LABEL031
  1000.             Case "R"
  1001.                 InputStr " Number of days before expiration of level nine user ", TINTEGER005(9), 11, 5, Mask_Num(), 2 + 4 + 8
  1002.                 Goto LABEL031
  1003.             Case Else
  1004.                 Goto LABEL031
  1005.         End Select
  1006.         Goto LABEL036
  1007.         :LABEL032
  1008.         FClose 2
  1009.         STRING048 = STRING018
  1010.         FOpen 2, PPEPath() + "credits.cfg", 2, 0
  1011.         FPutLn 2, STRING008
  1012.         FPutLn 2, STRING053
  1013.         FPutLn 2, STRING054
  1014.         FPutLn 2, STRING007
  1015.         FPutLn 2, STRING013
  1016.         FPutLn 2, STRING006
  1017.         FPutLn 2, STRING022
  1018.         FPutLn 2, STRING025
  1019.         FPutLn 2, INTEGER016
  1020.         FPutLn 2, STRING033
  1021.         FPutLn 2, STRING045
  1022.         FPutLn 2, STRING046
  1023.         FPutLn 2, STRING047
  1024.         FPutLn 2, STRING049
  1025.         FPutLn 2, REAL001
  1026.         FPutLn 2, REAL005
  1027.         FPutLn 2, TINTEGER025(1)
  1028.         FPutLn 2, TMONEY003(1)
  1029.         FPutLn 2, TINTEGER003(1)
  1030.         FPutLn 2, TINTEGER028(1)
  1031.         FPutLn 2, TINTEGER004(1)
  1032.         FPutLn 2, TINTEGER005(1)
  1033.         FPutLn 2, TINTEGER025(2)
  1034.         FPutLn 2, TMONEY003(2)
  1035.         FPutLn 2, TINTEGER003(2)
  1036.         FPutLn 2, TINTEGER028(2)
  1037.         FPutLn 2, TINTEGER004(2)
  1038.         FPutLn 2, TINTEGER005(2)
  1039.         FPutLn 2, TINTEGER025(3)
  1040.         FPutLn 2, TMONEY003(3)
  1041.         FPutLn 2, TINTEGER003(3)
  1042.         FPutLn 2, TINTEGER028(3)
  1043.         FPutLn 2, TINTEGER004(3)
  1044.         FPutLn 2, TINTEGER005(3)
  1045.         FPutLn 2, TINTEGER025(4)
  1046.         FPutLn 2, TMONEY003(4)
  1047.         FPutLn 2, TINTEGER003(4)
  1048.         FPutLn 2, TINTEGER028(4)
  1049.         FPutLn 2, TINTEGER004(4)
  1050.         FPutLn 2, TINTEGER005(4)
  1051.         FPutLn 2, TINTEGER025(5)
  1052.         FPutLn 2, TMONEY003(5)
  1053.         FPutLn 2, TINTEGER003(5)
  1054.         FPutLn 2, TINTEGER028(5)
  1055.         FPutLn 2, TINTEGER004(5)
  1056.         FPutLn 2, TINTEGER005(5)
  1057.         FPutLn 2, TINTEGER025(6)
  1058.         FPutLn 2, TMONEY003(6)
  1059.         FPutLn 2, TINTEGER003(6)
  1060.         FPutLn 2, TINTEGER028(6)
  1061.         FPutLn 2, TINTEGER004(6)
  1062.         FPutLn 2, TINTEGER005(6)
  1063.         FPutLn 2, TINTEGER025(7)
  1064.         FPutLn 2, TMONEY003(7)
  1065.         FPutLn 2, TINTEGER003(7)
  1066.         FPutLn 2, TINTEGER028(7)
  1067.         FPutLn 2, TINTEGER004(7)
  1068.         FPutLn 2, TINTEGER005(7)
  1069.         FPutLn 2, TINTEGER025(8)
  1070.         FPutLn 2, TMONEY003(8)
  1071.         FPutLn 2, TINTEGER003(8)
  1072.         FPutLn 2, TINTEGER028(8)
  1073.         FPutLn 2, TINTEGER004(8)
  1074.         FPutLn 2, TINTEGER005(8)
  1075.         FPutLn 2, TINTEGER025(9)
  1076.         FPutLn 2, TMONEY003(9)
  1077.         FPutLn 2, TINTEGER003(9)
  1078.         FPutLn 2, TINTEGER028(9)
  1079.         FPutLn 2, TINTEGER004(9)
  1080.         FPutLn 2, TINTEGER005(9)
  1081.         FPutLn 2, STRING048
  1082.         Goto LABEL036
  1083.         :LABEL033
  1084.         FOpen 2, PPEPath() + "credits.cfg", 2, 0
  1085.         FGet 2, STRING008
  1086.         If (STRING008 == "") STRING008 = " Place your BBS name here"
  1087.         FGet 2, STRING053
  1088.         If (STRING053 == "") STRING053 = "Place street address - leave blank if none"
  1089.         FGet 2, STRING054
  1090.         If (STRING054 == "") STRING054 = " Leave blank if none"
  1091.         FGet 2, STRING007
  1092.         If (STRING007 == "") STRING007 = " Sysop name here"
  1093.         FGet 2, STRING013
  1094.         If (STRING013 == "") STRING013 = "555-1212"
  1095.         FGet 2, STRING006
  1096.         If (STRING006 == "") STRING006 = "000000"
  1097.         FGet 2, STRING022
  1098.         If (STRING022 == "") STRING022 = "Credits"
  1099.         FGet 2, STRING025
  1100.         If (STRING025 == "") STRING025 = "Path to invoices"
  1101.         FGet 2, INTEGER016
  1102.         If (INTEGER016 == "") INTEGER016 = "2"
  1103.         FGet 2, STRING033
  1104.         If (STRING033 == "") STRING033 = "Y"
  1105.         FGet 2, STRING045
  1106.         If (STRING045 == "") STRING045 = "N"
  1107.         FGet 2, STRING046
  1108.         If (STRING046 == "") STRING046 = "N"
  1109.         FGet 2, STRING047
  1110.         If (STRING047 == "") STRING047 = "N"
  1111.         FGet 2, STRING049
  1112.         If (STRING049 == "") STRING049 = "N"
  1113.         FGet 2, REAL001
  1114.         If (REAL001 == "") REAL001 = "0"
  1115.         FGet 2, REAL005
  1116.         If (REAL005 == "") REAL005 = "0"
  1117.         FGet 2, TINTEGER025(1)
  1118.         If (TINTEGER025(1) == "") TINTEGER025(1) = ""
  1119.         FGet 2, TMONEY003(1)
  1120.         If (TMONEY003(1) == "") TMONEY003(1) = ""
  1121.         FGet 2, TINTEGER003(1)
  1122.         If (TINTEGER003(1) == "") TINTEGER003(1) = "0"
  1123.         FGet 2, TINTEGER028(1)
  1124.         If (TINTEGER028(1) == "") TINTEGER028(1) = "0"
  1125.         FGet 2, TINTEGER004(1)
  1126.         If (TINTEGER004(1) == "") TINTEGER004(1) = "0"
  1127.         FGet 2, TINTEGER005(1)
  1128.         If (TINTEGER005(1) == "") TINTEGER005(1) = "0"
  1129.         FGet 2, TINTEGER025(2)
  1130.         If (TINTEGER025(2) == "") TINTEGER025(2) = ""
  1131.         FGet 2, TMONEY003(2)
  1132.         If (TMONEY003(2) == "") TMONEY003(2) = ""
  1133.         FGet 2, TINTEGER003(2)
  1134.         If (TINTEGER003(2) == "") TINTEGER003(2) = "0"
  1135.         FGet 2, TINTEGER028(2)
  1136.         If (TINTEGER028(2) == "") TINTEGER028(2) = "0"
  1137.         FGet 2, TINTEGER004(2)
  1138.         If (TINTEGER004(2) == "") TINTEGER004(2) = "0"
  1139.         FGet 2, TINTEGER005(2)
  1140.         If (TINTEGER005(2) == "") TINTEGER005(2) = "0"
  1141.         FGet 2, TINTEGER025(3)
  1142.         If (TINTEGER025(3) == "") TINTEGER025(3) = ""
  1143.         FGet 2, TMONEY003(3)
  1144.         If (TMONEY003(3) == "") TMONEY003(3) = ""
  1145.         FGet 2, TINTEGER003(3)
  1146.         If (TINTEGER003(3) == "") TINTEGER003(3) = "0"
  1147.         FGet 2, TINTEGER028(3)
  1148.         If (TINTEGER028(3) == "") TINTEGER028(3) = "0"
  1149.         FGet 2, TINTEGER004(3)
  1150.         If (TINTEGER004(3) == "") TINTEGER004(3) = "0"
  1151.         FGet 2, TINTEGER005(3)
  1152.         If (TINTEGER005(3) == "") TINTEGER005(3) = "0"
  1153.         FGet 2, TINTEGER025(4)
  1154.         If (TINTEGER025(4) == "") TINTEGER025(4) = ""
  1155.         FGet 2, TMONEY003(4)
  1156.         If (TMONEY003(4) == "") TMONEY003(4) = ""
  1157.         FGet 2, TINTEGER003(4)
  1158.         If (TINTEGER003(4) == "") TINTEGER003(4) = "0"
  1159.         FGet 2, TINTEGER028(4)
  1160.         If (TINTEGER028(4) == "") TINTEGER028(4) = "0"
  1161.         FGet 2, TINTEGER004(4)
  1162.         If (TINTEGER004(4) == "") TINTEGER004(4) = "0"
  1163.         FGet 2, TINTEGER005(4)
  1164.         If (TINTEGER005(4) == "") TINTEGER005(4) = "0"
  1165.         FGet 2, TINTEGER025(5)
  1166.         If (TINTEGER025(5) == "") TINTEGER025(5) = ""
  1167.         FGet 2, TMONEY003(5)
  1168.         If (TMONEY003(5) == "") TMONEY003(5) = ""
  1169.         FGet 2, TINTEGER003(5)
  1170.         If (TINTEGER003(5) == "") TINTEGER003(5) = "0"
  1171.         FGet 2, TINTEGER028(5)
  1172.         If (TINTEGER028(5) == "") TINTEGER028(5) = "0"
  1173.         FGet 2, TINTEGER004(5)
  1174.         If (TINTEGER004(5) == "") TINTEGER004(5) = "0"
  1175.         FGet 2, TINTEGER005(5)
  1176.         If (TINTEGER005(5) == "") TINTEGER005(5) = "0"
  1177.         FGet 2, TINTEGER025(6)
  1178.         If (TINTEGER025(6) == "") TINTEGER025(6) = ""
  1179.         FGet 2, TMONEY003(6)
  1180.         If (TMONEY003(6) == "") TMONEY003(6) = ""
  1181.         FGet 2, TINTEGER003(6)
  1182.         If (TINTEGER003(6) == "") TINTEGER003(6) = "0"
  1183.         FGet 2, TINTEGER028(6)
  1184.         If (TINTEGER028(6) == "") TINTEGER028(6) = "0"
  1185.         FGet 2, TINTEGER004(6)
  1186.         If (TINTEGER004(6) == "") TINTEGER004(6) = "0"
  1187.         FGet 2, TINTEGER005(6)
  1188.         If (TINTEGER005(6) == "") TINTEGER005(6) = "0"
  1189.         FGet 2, TINTEGER025(7)
  1190.         If (TINTEGER025(7) == "") TINTEGER025(7) = ""
  1191.         FGet 2, TMONEY003(7)
  1192.         If (TMONEY003(7) == "") TMONEY003(7) = ""
  1193.         FGet 2, TINTEGER003(7)
  1194.         If (TINTEGER003(7) == "") TINTEGER003(7) = "0"
  1195.         FGet 2, TINTEGER028(7)
  1196.         If (TINTEGER028(7) == "") TINTEGER028(7) = "0"
  1197.         FGet 2, TINTEGER004(7)
  1198.         If (TINTEGER004(7) == "") TINTEGER004(7) = "0"
  1199.         FGet 2, TINTEGER005(7)
  1200.         If (TINTEGER005(7) == "") TINTEGER005(7) = "0"
  1201.         FGet 2, TINTEGER025(8)
  1202.         If (TINTEGER025(8) == "") TINTEGER025(8) = ""
  1203.         FGet 2, TMONEY003(8)
  1204.         If (TMONEY003(8) == "") TMONEY003(8) = ""
  1205.         FGet 2, TINTEGER003(8)
  1206.         If (TINTEGER003(8) == "") TINTEGER003(8) = "0"
  1207.         FGet 2, TINTEGER028(8)
  1208.         If (TINTEGER028(8) == "") TINTEGER028(8) = "0"
  1209.         FGet 2, TINTEGER004(8)
  1210.         If (TINTEGER004(8) == "") TINTEGER004(8) = "0"
  1211.         FGet 2, TINTEGER005(8)
  1212.         If (TINTEGER005(8) == "") TINTEGER005(8) = "0"
  1213.         FGet 2, TINTEGER025(9)
  1214.         If (TINTEGER025(9) == "") TINTEGER025(9) = ""
  1215.         FGet 2, TMONEY003(9)
  1216.         If (TMONEY003(9) == "") TMONEY003(9) = ""
  1217.         FGet 2, TINTEGER003(9)
  1218.         If (TINTEGER003(9) == "") TINTEGER003(9) = "0"
  1219.         FGet 2, TINTEGER028(9)
  1220.         If (TINTEGER028(9) == "") TINTEGER028(9) = "0"
  1221.         FGet 2, TINTEGER004(9)
  1222.         If (TINTEGER004(9) == "") TINTEGER004(9) = "0"
  1223.         FGet 2, TINTEGER005(9)
  1224.         If (TINTEGER005(9) == "") TINTEGER005(9) = "0"
  1225.         FGet 2, STRING048
  1226.         FClose 2
  1227.         Return
  1228.         :LABEL034
  1229.         STRING026 = "cr" + String(U_RecNum(U_Name())) + ".inv"
  1230.         If (Exist(STRING025 + STRING026)) Goto LABEL035
  1231.         PrintLn 
  1232.         PrintLn "   " + TSTRING020(60)
  1233.         Goto LABEL009
  1234.         :LABEL035
  1235.         STRING024 = Left(ReadLine(PCBDat(), 52), 4)
  1236.         STRING024 = Right(STRING024, 1)
  1237.         If (STRING024 > "2") Then
  1238.             INTEGER027 = ReadLine(PCBDat(), 158)
  1239.             STRING031 = ReadLine(PCBDat(), 159)
  1240.             PrintLn 
  1241.             PrintLn "                       " + TSTRING020(61)
  1242.             PrintLn 
  1243.             Shell 1, INTEGER026, "dsz portx " + STRING031 + "," + String(INTEGER027), " sz " + STRING025 + STRING026
  1244.         Else
  1245.             Shell 1, INTEGER026, "dsz port " + STRING024 + " sz " + STRING025 + STRING026, ""
  1246.         Endif
  1247.         Return
  1248.     Endif
  1249.     :LABEL036
  1250.     If ((TINTEGER025(INTEGER017) == "") || (TINTEGER025(INTEGER017) == "0")) Then
  1251.         FPutLn 7, "N,None", ""
  1252.         End
  1253.     Else
  1254.         FPut 7, "Y", ",", Date(), ",", Time(), ",", TINTEGER025(INTEGER017), ",", TMONEY003(INTEGER017)
  1255.         If (STRING052 == "Y") FPut 7, ",", "TEST"
  1256.         FPutLn 7
  1257.     Endif
  1258.     End
  1259.  
  1260. ;------------------------------------------------------------------------------
  1261. ;
  1262. ; Usage report (before postprocessing)
  1263. ;
  1264. ; ■ Statements used :
  1265. ;
  1266. ;    3       End
  1267. ;    5       Cls
  1268. ;    5       Wait
  1269. ;    365     Goto 
  1270. ;    209     Let 
  1271. ;    4       Print 
  1272. ;    189     PrintLn 
  1273. ;    253     If 
  1274. ;    4       DispFile 
  1275. ;    5       FOpen 
  1276. ;    11      FAppend 
  1277. ;    9       FClose 
  1278. ;    74      FGet 
  1279. ;    3       FPut 
  1280. ;    127     FPutLn 
  1281. ;    2       GetUser
  1282. ;    1       PutUser
  1283. ;    1       Delete 
  1284. ;    2       Log 
  1285. ;    91      InputStr 
  1286. ;    12      Gosub 
  1287. ;    7       Return
  1288. ;    1       Delay 
  1289. ;    9       Newlines 
  1290. ;    1       GetToken 
  1291. ;    4       Shell 
  1292. ;    2       AnsiPos 
  1293. ;    1       Message 
  1294. ;    2       Account 
  1295. ;
  1296. ;
  1297. ; ■ Functions used :
  1298. ;
  1299. ;    5       *
  1300. ;    3       /
  1301. ;    434     +
  1302. ;    19      -
  1303. ;    218     ==
  1304. ;    18      <>
  1305. ;    8       <
  1306. ;    7       <=
  1307. ;    3       >
  1308. ;    14      >=
  1309. ;    125     !
  1310. ;    22      &&
  1311. ;    7       ||
  1312. ;    23      Len(
  1313. ;    1       Lower()
  1314. ;    4       Mid()
  1315. ;    9       Left()
  1316. ;    6       Right()
  1317. ;    16      Space()
  1318. ;    3       Ferr()
  1319. ;    7       Chr()
  1320. ;    3       Asc()
  1321. ;    3       InStr()
  1322. ;    12      Date()
  1323. ;    4       Time()
  1324. ;    9       U_Name()
  1325. ;    3       Year()
  1326. ;    2       Month()
  1327. ;    20      StripAtx()
  1328. ;    5       Strip()
  1329. ;    24      String()
  1330. ;    47      Mask_Num()
  1331. ;    28      Mask_Ascii()
  1332. ;    7       PCBDat()
  1333. ;    24      PPEPath()
  1334. ;    7       ReadLine()
  1335. ;    1       SysopSec()
  1336. ;    5       Exist()
  1337. ;    1       LangExt()
  1338. ;    1       ValCC()
  1339. ;    2       FmtCC()
  1340. ;    13      CCType()
  1341. ;    5       Psa()
  1342. ;    1       PPEName()
  1343. ;    4       U_RecNum()
  1344. ;    3       Account()
  1345. ;
  1346. ;------------------------------------------------------------------------------
  1347. ;
  1348. ; Analysis flags : WSds
  1349. ;
  1350. ; W - Write user ■ 5
  1351. ;     Program writes a user record. Although this may be normal for a
  1352. ;     User Editor, it may also be a way to modify an account level.
  1353. ;     ■ Search for : PUTUSER
  1354. ;
  1355. ; S - Shell to DOS ■ 5
  1356. ;     This may be normal if the PPE need to execute an external command,
  1357. ;     but may be actually anything... nasty (formating HD, rebooting,...)
  1358. ;     or usefull (sorting, maintenance,...). Check!
  1359. ;     ■ Search for : SHELL
  1360. ;
  1361. ; d - Access PCBOARD.DAT ■ 2
  1362. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  1363. ;     for many PPE so they can find various informations on the system
  1364. ;     (system paths, max number of lines in messages, ...) but it may also
  1365. ;     be a way to gather vital informations.
  1366. ;     ■ Search for : PCBDAT()
  1367. ;
  1368. ; s - Sysop level access ■ 5
  1369. ;     Program is reading the sysop access level, this may be normal
  1370. ;     but still it is very suspect. It is the best way to give a user
  1371. ;     all priviledges. Check!
  1372. ;     ■ Search for : SYSOPSEC()
  1373. ;
  1374. ;------------------------------------------------------------------------------
  1375. ;
  1376. ; Postprocessing report
  1377. ;
  1378. ;    5       For/Next
  1379. ;    0       While/EndWhile
  1380. ;    33      If/Then or If/Then/Else
  1381. ;    6       Select Case
  1382. ;
  1383. ;------------------------------------------------------------------------------
  1384. ;                 AEGiS Corp - Break the routines, code against the machines!
  1385. ;------------------------------------------------------------------------------
  1386.